package com.example.service;

import com.example.common.result.Result;
import com.example.entity.dto.TicketDto;
import com.example.entity.dto.WorkOrderProcessDto;
import com.example.entity.vo.gd.CmsMqVoEnglish;
import com.example.entity.vo.gd.CraftVo;
import com.example.entity.vo.gd.TicketVo;
import com.example.entity.vo.gd.WorkOrderProcessVo;
import com.example.entity.yifei.Copma;
import com.mgkj.dao.share.vo.WorkCenterVo;

import java.util.List;
import java.util.Map;

public interface TicketsService {

    /**
     * 输入单据性质进行查询工单单别
     * @param mq003
     * @return
     */
    Result<List<CmsMqVoEnglish>> queryTicketDb(String mq003);

    /**
     * 查询工作中心信息
     * @return
     */
    Result<List<WorkCenterVo>> queryWorkCenterVo();

    /**
     * 分页查询工单信息
     * @param current
     * @param size
     * @param ticketDto
     * @return
     */
    Result<Map<String,TicketVo>> queryTicketIpAge(Integer current, Integer size, TicketDto ticketDto);

    /**
     * 通过工单的单别单号查询工单工艺信息
     * @param ta001
     * @param ta002
     * @return
     */
    Result<List<WorkOrderProcessVo>> queryWorkOrderProcess(String ta001, String ta002);

    /**
     * 查询工艺
     * @return
     */
    Result<List<CraftVo>> queryCraft(String division);

    /**
     * 修改工单工艺(其实也是新增操作)
     * @param workOrderProcessDtoList
     * @return
     */
    Result<?> insertOrUpdateWorkOrderProcess(List<WorkOrderProcessDto> workOrderProcessDtoList);

    /**
     * 删除工单工艺
     * @param ta001
     * @param ta002
     * @return
     */
    Result<?> deleteCraft(String ta001,String ta002);

    /**
     * 查询客户信息（全查）
     * @return
     */
    Result<List<Copma>> listCustomer();
}
